Is Ordering of Disk Updates Required to Maintain File-System Crash-Consistency?
نویسنده
چکیده
On reboot after a crash, the file system should be consistent: e.g., previously correct files should not now contain garbage. In early file systems, getting to a consistent state involved a full scan after reboot. This was very slow, and impractical for large systems. Modern file systems improve upon this by writing updates to disk in a specific order : e.g, metadata before commit blocks. This allows them to get to a consistent state without a scan. However, ordering updates results in certain problems: 1. The file system write order may not be the most efficient order for writing blocks to disk. This reduces performance. 2. The file system has to be very careful about the order; this increases complexity, potentially leading to more bugs and lower reliability. 3. For disks with write caches, commands such as cache flushes are required to ensure correct ordering. If such commands are not properly implemented, consistency is compromised [1]. 4. In virtualized stacks, even if one of the many layers between the file system and the disk does not enforce ordering, consistency is lost. The question then arises: can crash-consistency be maintained without ordering updates? Recent work introduced the No-Order File System (NoFS) [2], the first file system to provide strong consistency despite not ordering updates. NoFS uses a novel technique called Backpointer-Based Consistency (BBC) that establishes consistency via mutual agreement between file-system objects. NoFS performs as well as a comparable journaling file system (ext3) for most workloads, and increases throughput by 20-70% for metadata-intensive workloads. BODYNot only is it possible to maintain file-system crash-consistency without order-ing updates, but doing so may actually increase performance. REFERENCES[1] Rajimwale, A., Chidambaram, V., Ramamurthi, D., Arpaci-Dusseau, A. C., andArpaci-Dusseau, R. H. Coerced cache eviction and discreet mode journaling: Dealing withmisbehaving disks. In Dependable Systems & Networks (DSN), 2011 IEEE/IFIP 41stInternational Conference on (Hong Kong, China, June 2011), IEEE, pp. 518–529.[2] Vijay Chidambaram, Tushar Sharma, Andrea C. Arpaci-Dusseau, Remzi H.Arpaci-Dusseau. Consistency Without Ordering. In Proceedings of the 10th Conference onFile and Storage Technologies (FAST ’12) (San Jose, California, February 2012). Volume 2 of Tiny Transactions on Computer ScienceThis content is released under the Creative Commons Attribution-NonCommercial ShareAlike License. Permission tomake digital or hard copies of all or part of this work is granted without fee provided that copies are not made ordistributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page.CC BY-NC-SA 3.0: http://creativecommons.org/licenses/by-nc-sa/3.0/.
منابع مشابه
Consistency without ordering
Modern file systems use ordering points to maintain consistency in the face of system crashes. However, such ordering leads to lower performance, higher complexity, and a strong and perhaps naive dependence on lower layers to correctly enforce the ordering of writes. In this paper, we introduce the No-Order File System (NoFS), a simple, lightweight file system that employs a novel technique cal...
متن کاملLightweight Application-Level Crash Consistency on Transactional Flash Storage
Applications implement their own update protocols to ensure consistency of data on the file system. However, since current file systems provide only a preliminary ordering guarantee, notably fsync(), these update protocols become complex, slow, and error-prone. We present a new file system, CFS, that supports a native interface for applications to maintain crash consistency of their data. Using...
متن کاملVerifying File System Consistency at Runtime
Existing file-system reliability methods, such as checksums, redundancy, or transactional updates, provide limited defenses against file-system bugs that cause disk corruption. The existing workarounds, based on using backups or repairing the file system, are painfully slow. Worse, the recovery is performed much after the error occurred, and thus may result in further corruption and data loss. ...
متن کاملDesigning multicore scalable filesystems with durability and crash consistency
It is challenging to simultaneously achieve multicore scalability and high disk throughput in a file system. For example, data structures that are on separate cache lines in memory (e.g., directory entries) are grouped together in a transaction log when the file system writes them to disk. This grouping results in cache line conflicts, thereby limiting scalability. McoreFS is a novel file syste...
متن کاملUnifying File System Protection
This paper describes an efficient and elegant architecture for unifying the meta-data protection of journaling file systems with the data integrity protection of collision-resistant cryptographic hashes. Traditional file system journaling protects the ordering of meta-data operations to maintain consistency in the presence of crashes. However, journaling does not protect important system meta-d...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- TinyToCS
دوره 2 شماره
صفحات -
تاریخ انتشار 2013